import tkinter as tk

"""**********************  花一定的时间来写出思路   *************************"""
""" 具体 place 方法的参数请参照失败的man(前车之鉴) """
    # (页面内部需要一个 Menu 来  查看帮助/调整难度/查看失败的man/...)
    # (输入框的左右两侧以及其他空白区域可以用 Canvas 适当装饰以提升美观度)

    # 页面内首先需要 6个 Label (列表中) 通过def word_condition(self): 方法来改变其 text属性
    # 页面内需要有一个显示当前生命的 Label 来显示个数
    # 需要有一个 Entry 来接受用户输入的内容

    # 然后三个 Button :
        # 一个是确认并提交单词到实例属性self.answer中，并且清除 Entry 中的内容

        # 一个是重新开始，需要一个tkinter.messagebox.askyesno,如果True的话那么就重置self.word,
        # 重置self.wrong,重置self.life,重置self.times

        # 一个是退出游戏.需要一个tkinter.messagebox.askyesno,如果True的话那么就 self.root.quit()

    # 还需要一个方法 def warns(self): 来生成一个 Label 并且 time.sleep(2) 暂停以下
    # 以此来提醒玩家输入正确格式及长度的单词


""" 主要游戏逻辑(这次我必须要理清思路,我要死磕！！！！！) """
    # (难度通过self.life = len(word)*ARGS 中的 ARGS来决定)
    # (ARGS 的默认值为5(简单难度),困难难度可以 通过def diffic(self): 方法来重置self.diff)
    # (4 为中等 3 为困难)

    # 在主程序中首先要创建一个 root = tk.Tk ,然后调整参数
    # 别忘了 mainloop()

    # 主要游戏逻辑要通过 def game(): 来实现。首先需要 while 循环:else 其他条件:
    # while 的条件为 self.life>0,True 的话就进行主要逻辑(往下)
    # else 的话为self.life == 0,然后就将self.answer 设置为self.word;

    # 1. 用 word_condition 来显示当前单词状态(初始状态为self.times 个问号)
        # word_condition: for 循环遍历self.answer的列表的长度,并将对应 self.letters[i]
        # 对应的 text 参数设置为 self.answer[i]

"注意！！！初始状态下 self.answer不符合要求"
    # 2. 判断！！！最好能封装到一个外部函数当中？？？
        # (1) 需要 if 判断一个参数self.guess_time = 0 来让第一次(self.answer = ''时)
        # 也能继续运行:

        # (2) if 判断的逻辑:  (外部函数) 然后用户要重新输入
                        # 一、len()是否正好相等？
                        # 二、.isalpha()不是字母的字符?
                        # 三、...

    # 3. (已获得单词)将单词进行 list() 方法
        # 以下封装为实例方法(或者外部方法迭代)
        # 需要将用户输入词显示在方格中

        # (1) 遍历  若字母在未知序列中存在且顺序相同那么标粉色
        # 标色方法为  点config()

        # (2) 若不存在直接 self.wrong+=2 且 self.life-=2
        # 颜色为 orange

        # (3) 若存在于未知 字母列表中 但顺序错误那就 self.life-=1
        # 且 self.wrong+=1 颜色为黄色

    # 4.(1) 若用户最终单词与 ''.join(self.word) 完全相同: 调用 orna.winner_rank()方法
    # 并弹出胜利信息; 反之弹出失败(跳出循环时 if self.life <= 0 )信息框
    #   (2) 游戏结束 (先到这里)

"""其他问题"""
# 创建账号以及登录怎么往里边并入呢
# 怎么跳转页面呢？？？


"""失败经历:
1.为什么tkinter的Label类通过列表方式遍历出来的是字符串对象
2.不会用多线程和多进程让循环与mainloop()方法同步进行"""













